﻿using System;
using System.Data;
using System.Runtime.Serialization;
using System.ServiceModel;

namespace HRMService
{
    // NOTE: If you change the interface name "IInterview" here, you must also update the reference to "IInterview" in App.config.
    [ServiceContract(Namespace = "http://HRMService")]
    public interface IInterview
    {
        [OperationContract]
        DataSet Interview_GetAll();

        [OperationContract]
        int Interview_Using(int InterviewID);

        [OperationContract]
        DataSet Interview_GetByCandidate(int _CandidateID);

        [OperationContract]
        InterviewInfo Interview_GetInfo(int InterviewID);

        [OperationContract]
        DataSet Interview_GetList(out int ItemCount, int currentPage, int pageSize);

        [OperationContract]
        int Interview_Insert(InterviewInfo eInfo);

        [OperationContract]
        bool Interview_Update(InterviewInfo eInfo);

        [OperationContract]
        bool Interview_Delete(int InterviewID);
    }

    [DataContract(Namespace = "http://HRMService")]
    public class InterviewInfo
    {
        int _ID;
        [DataMember]
        public int ID
        {
            get { return _ID; }
            set { _ID = value; }
        }
        int _CandidateID;
        [DataMember]
        public int CandidateID
        {
            get { return _CandidateID; }
            set { _CandidateID = value; }
        }
        int _PositionID;
        [DataMember]
        public int PositionID
        {
            get { return _PositionID; }
            set { _PositionID = value; }
        }
        DateTime _InterviewDate;
        [DataMember]
        public DateTime InterviewDate
        {
            get { return _InterviewDate; }
            set { _InterviewDate = value; }
        }
        string _Creteria;
        [DataMember]
        public string Creteria
        {
            get { return _Creteria; }
            set { _Creteria = value; }
        }
        string _Mark;
        [DataMember]
        public string Mark
        {
            get { return _Mark; }
            set { _Mark = value; }
        }
        string _Comments;
        [DataMember]
        public string Comments
        {
            get { return _Comments; }
            set { _Comments = value; }
        }
        bool _Approved;
        [DataMember]
        public bool Approved
        {
            get { return _Approved; }
            set { _Approved = value; }
        }
        string _Person;
        [DataMember]
        public string Person
        {
            get { return _Person; }
            set { _Person = value; }
        }
    }
}
